package com.fun;

import java.util.HashSet;
import java.util.Set;

/**
 * 
* @ClassName: Nine 
* @Description: 九宫格算法 
* @author minjun
* @date 2015年3月22日 下午12:15:30 
*
 */
public class Nine {

	public static void main(String[] args) {
		int[][] nine=getNine();
		System.out.println(isNine(nine)?"符合九宫格":"不符合九宫格");
		printNine(nine);
	}
	
	private static void printNine(int[][] nine) {
		for(int i=0;i<3;i++){
			for(int j=0;j<3;j++){
				System.out.print(nine[i][j]+"\t");
			}
			System.out.println();
		}
	}

	public static boolean isNine(int[][] nine){
		
		Set<Integer> set=new HashSet<Integer>();
		
		for(int i=0;i<3;i++){
			int sum=0;
			for(int j=0;j<3;j++){
				sum+=nine[i][j];
			}
			set.add(sum);
		}
		
		for(int i=0;i<3;i++){
			int sum=0;
			for(int j=0;j<3;j++){
				sum+=nine[j][i];
			}
			set.add(sum);
		}
		
		set.add(nine[0][0]+nine[1][1]+nine[2][2]);
		set.add(nine[2][0]+nine[1][1]+nine[0][2]);
		
		return set.size()==1;
	}
	
	private static int[][] getNine() {
		int[][] nine={
				{6,7,2},
				{1,5,9},
				{8,3,4}
			};
		return nine; 
	}
	
}
